import axios, {AxiosRequestConfig, AxiosError, AxiosResponse} from "axios";
import {GETCOOKIE} from "../utils/cookies";
// import Cookie from "js-cookie";
// 跨域认证信息 header 名
// const xsrfHeaderName = "Authorization";
axios.defaults.baseURL = "/api";
axios.defaults.timeout = 5000;

// http 方法
// const METHOD = {
//   GET: 'get',
//   POST: 'post',
//   DELETE: 'delete',
//   PUT: 'put',
// };

// 请求拦截器
axios.interceptors.request.use(
  (config: AxiosRequestConfig) => {
    // console.log('config', config);
    if (GETCOOKIE("token")) {
      config.headers!["Authori-zation"] = GETCOOKIE("token");
    }
    return config as any;
  },
  (error: AxiosError) => {
    return Promise.reject(error);
  }
);

// 响应拦截器
axios.interceptors.response.use((config: AxiosResponse) => {
  // token过期
  if (config.data.code == 401) {
    // router.push('/')
  }
  if (config.data.code == 200) {
    return config as any;
  } else {
    // 返回500页面
  }
  return config;
});

export default axios;
